home *** CD-ROM | disk | FTP | other *** search
-
-
-
- ____TTTTRRRRSSSSMMMM((((3333FFFF)))) ____TTTTRRRRSSSSMMMM((((3333FFFF))))
-
-
-
- NNNNAAAAMMMMEEEE
- dtrsm, strsm, ztrsm, ctrsm - BLAS level three Solution of Systems of
- Equations
-
-
- FFFFOOOORRRRTTTTRRRRAAAANNNN 77777777 SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
- ssssuuuubbbbrrrroooouuuuttttiiiinnnneeee ddddttttrrrrssssmmmm(((( ssssiiiiddddeeee,,,, uuuupppplllloooo,,,, ttttrrrraaaannnnssssaaaa,,,, ddddiiiiaaaagggg,,,, mmmm,,,, nnnn,,,, aaaallllpppphhhhaaaa,,,, aaaa,,,, llllddddaaaa,,,, bbbb,,,, llllddddbbbb ))))
- cccchhhhaaaarrrraaaacccctttteeeerrrr****1111 ssssiiiiddddeeee,,,,uuuupppplllloooo,,,,ttttrrrraaaannnnssssaaaa,,,,ddddiiiiaaaagggg
- iiiinnnntttteeeeggggeeeerrrr mmmm,,,, nnnn,,,, llllddddaaaa,,,, llllddddbbbb
- ddddoooouuuubbbblllleeee pppprrrreeeecccciiiissssiiiioooonnnn aaaallllpppphhhhaaaa
- ddddoooouuuubbbblllleeee pppprrrreeeecccciiiissssiiiioooonnnn aaaa(((( llllddddaaaa,,,,****)))),,,, bbbb((((llllddddbbbb,,,,****))))
-
- ssssuuuubbbbrrrroooouuuuttttiiiinnnneeee ssssttttrrrrssssmmmm(((( ssssiiiiddddeeee,,,, uuuupppplllloooo,,,, ttttrrrraaaannnnssssaaaa,,,, ddddiiiiaaaagggg,,,, mmmm,,,, nnnn,,,, aaaallllpppphhhhaaaa,,,, aaaa,,,, llllddddaaaa,,,, bbbb,,,, llllddddbbbb ))))
- cccchhhhaaaarrrraaaacccctttteeeerrrr****1111 ssssiiiiddddeeee,,,,uuuupppplllloooo,,,,ttttrrrraaaannnnssssaaaa,,,,ddddiiiiaaaagggg
- iiiinnnntttteeeeggggeeeerrrr mmmm,,,, nnnn,,,, llllddddaaaa,,,, llllddddbbbb
- rrrreeeeaaaallll aaaallllpppphhhhaaaa
- rrrreeeeaaaallll aaaa(((( llllddddaaaa,,,,****)))),,,, bbbb((((llllddddbbbb,,,,****))))
-
- ssssuuuubbbbrrrroooouuuuttttiiiinnnneeee zzzzttttrrrrssssmmmm(((( ssssiiiiddddeeee,,,, uuuupppplllloooo,,,, ttttrrrraaaannnnssssaaaa,,,, ddddiiiiaaaagggg,,,, mmmm,,,, nnnn,,,, aaaallllpppphhhhaaaa,,,, aaaa,,,, llllddddaaaa,,,, bbbb,,,, llllddddbbbb ))))
- cccchhhhaaaarrrraaaacccctttteeeerrrr****1111 ssssiiiiddddeeee,,,,uuuupppplllloooo,,,,ttttrrrraaaannnnssssaaaa,,,,ddddiiiiaaaagggg
- iiiinnnntttteeeeggggeeeerrrr mmmm,,,, nnnn,,,, llllddddaaaa,,,, llllddddbbbb
- ddddoooouuuubbbblllleeee ccccoooommmmpppplllleeeexxxx aaaallllpppphhhhaaaa
- ddddoooouuuubbbblllleeee ccccoooommmmpppplllleeeexxxx aaaa(((( llllddddaaaa,,,,****)))),,,, bbbb((((llllddddbbbb,,,,****))))
-
- ssssuuuubbbbrrrroooouuuuttttiiiinnnneeee ccccttttrrrrssssmmmm(((( ssssiiiiddddeeee,,,, uuuupppplllloooo,,,, ttttrrrraaaannnnssssaaaa,,,, ddddiiiiaaaagggg,,,, mmmm,,,, nnnn,,,, aaaallllpppphhhhaaaa,,,, aaaa,,,, llllddddaaaa,,,, bbbb,,,, llllddddbbbb ))))
- cccchhhhaaaarrrraaaacccctttteeeerrrr****1111 ssssiiiiddddeeee,,,,uuuupppplllloooo,,,,ttttrrrraaaannnnssssaaaa,,,,ddddiiiiaaaagggg
- iiiinnnntttteeeeggggeeeerrrr mmmm,,,, nnnn,,,, llllddddaaaa,,,, llllddddbbbb
- ccccoooommmmpppplllleeeexxxx aaaallllpppphhhhaaaa
- ccccoooommmmpppplllleeeexxxx aaaa(((( llllddddaaaa,,,,****)))),,,, bbbb((((llllddddbbbb,,,,****))))
-
-
- CCCC SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
- vvvvooooiiiidddd ddddttttrrrrssssmmmm(((( ssssiiiiddddeeee,,,, uuuupppplllloooo,,,, ttttrrrraaaannnnssssaaaa,,,, ddddiiiiaaaagggg,,,, mmmm,,,, nnnn,,,, aaaallllpppphhhhaaaa,,,, aaaa,,,, llllddddaaaa,,,, bbbb,,,, llllddddbbbb ))))
- OOOOppppeeeerrrraaaattttiiiioooonnnnSSSSiiiiddddeeee ssssiiiiddddeeee;;;;
- MMMMaaaattttrrrriiiixxxxTTTTrrrriiiiaaaannnngggglllleeee uuuupppplllloooo;;;;
- MMMMaaaattttrrrriiiixxxxTTTTrrrraaaannnnssssppppoooosssseeee ttttrrrraaaannnnssssaaaa;;;;
- MMMMaaaattttrrrriiiixxxxUUUUnnnniiiittttTTTTrrrriiiiaaaannnngggguuuullllaaaarrrr ddddiiiiaaaagggg;;;;
- IIIInnnntttteeeeggggeeeerrrr mmmm,,,, nnnn,,,, ttttddddaaaa,,,, ttttddddbbbb;;;;
- ddddoooouuuubbbblllleeee aaaallllpppphhhhaaaa;;;;
- ddddoooouuuubbbblllleeee ((((****aaaa))))[[[[llllddddaaaa****kkkk]]]],,,, ((((****bbbb))))[[[[llllddddaaaa****nnnn]]]];;;;
-
- vvvvooooiiiidddd ssssttttrrrrssssmmmm(((( ssssiiiiddddeeee,,,, uuuupppplllloooo,,,, ttttrrrraaaannnnssssaaaa,,,, ddddiiiiaaaagggg,,,, mmmm,,,, nnnn,,,, aaaallllpppphhhhaaaa,,,, aaaa,,,, llllddddaaaa,,,, bbbb,,,, llllddddbbbb ))))
- OOOOppppeeeerrrraaaattttiiiioooonnnnSSSSiiiiddddeeee ssssiiiiddddeeee;;;;
- MMMMaaaattttrrrriiiixxxxTTTTrrrriiiiaaaannnngggglllleeee uuuupppplllloooo;;;;
- MMMMaaaattttrrrriiiixxxxTTTTrrrraaaannnnssssppppoooosssseeee ttttrrrraaaannnnssssaaaa;;;;
- MMMMaaaattttrrrriiiixxxxUUUUnnnniiiittttTTTTrrrriiiiaaaannnngggguuuullllaaaarrrr ddddiiiiaaaagggg;;;;
- IIIInnnntttteeeeggggeeeerrrr mmmm,,,, nnnn,,,, llllddddaaaa,,,, llllddddbbbb;;;;
- ffffllllooooaaaatttt aaaallllpppphhhhaaaa;;;;
- ffffllllooooaaaatttt ((((****aaaa))))[[[[llllddddaaaa****kkkk]]]],,,, ((((****bbbb))))[[[[llllddddaaaa****nnnn]]]];;;;
-
- vvvvooooiiiidddd zzzzttttrrrrssssmmmm(((( ssssiiiiddddeeee,,,, uuuupppplllloooo,,,, ttttrrrraaaannnnssssaaaa,,,, ddddiiiiaaaagggg,,,, mmmm,,,, nnnn,,,, aaaallllpppphhhhaaaa,,,, aaaa,,,, llllddddaaaa,,,, bbbb,,,, llllddddbbbb ))))
- OOOOppppeeeerrrraaaattttiiiioooonnnnSSSSiiiiddddeeee ssssiiiiddddeeee;;;;
-
-
-
- PPPPaaaaggggeeee 1111
-
-
-
-
-
-
- ____TTTTRRRRSSSSMMMM((((3333FFFF)))) ____TTTTRRRRSSSSMMMM((((3333FFFF))))
-
-
-
- MMMMaaaattttrrrriiiixxxxTTTTrrrriiiiaaaannnngggglllleeee uuuupppplllloooo;;;;
- MMMMaaaattttrrrriiiixxxxTTTTrrrraaaannnnssssppppoooosssseeee ttttrrrraaaannnnssssaaaa;;;;
- MMMMaaaattttrrrriiiixxxxUUUUnnnniiiittttTTTTrrrriiiiaaaannnngggguuuullllaaaarrrr ddddiiiiaaaagggg;;;;
- IIIInnnntttteeeeggggeeeerrrr mmmm,,,, nnnn,,,, llllddddaaaa,,,, llllddddbbbb;;;;
- ZZZZoooommmmpppplllleeeexxxx aaaallllpppphhhhaaaa;;;;
- ZZZZoooommmmpppplllleeeexxxx ((((****aaaa))))[[[[llllddddaaaa****kkkk]]]],,,, ((((****bbbb))))[[[[llllddddaaaa****nnnn]]]];;;;
-
- vvvvooooiiiidddd ccccttttrrrrssssmmmm(((( ssssiiiiddddeeee,,,, uuuupppplllloooo,,,, ttttrrrraaaannnnssssaaaa,,,, ddddiiiiaaaagggg,,,, mmmm,,,, nnnn,,,, aaaallllpppphhhhaaaa,,,, aaaa,,,, llllddddaaaa,,,, bbbb,,,, llllddddbbbb ))))
- OOOOppppeeeerrrraaaattttiiiioooonnnnSSSSiiiiddddeeee ssssiiiiddddeeee;;;;
- MMMMaaaattttrrrriiiixxxxTTTTrrrriiiiaaaannnngggglllleeee uuuupppplllloooo;;;;
- MMMMaaaattttrrrriiiixxxxTTTTrrrraaaannnnssssppppoooosssseeee ttttrrrraaaannnnssssaaaa;;;;
- MMMMaaaattttrrrriiiixxxxUUUUnnnniiiittttTTTTrrrriiiiaaaannnngggguuuullllaaaarrrr ddddiiiiaaaagggg;;;;
- IIIInnnntttteeeeggggeeeerrrr mmmm,,,, nnnn,,,, llllddddaaaa,,,, llllddddbbbb;;;;
- CCCCoooommmmpppplllleeeexxxx aaaallllpppphhhhaaaa;;;;
- CCCCoooommmmpppplllleeeexxxx ((((****aaaa))))[[[[llllddddaaaa****kkkk]]]],,,, ((((****bbbb))))[[[[llllddddaaaa****nnnn]]]];;;;
-
-
-
- DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
- ddddttttrrrrssssmmmm, ssssttttrrrrssssmmmm, zzzzttttrrrrssssmmmm and ccccttttrrrrssssmmmm solve one of the matrix equations
-
- op( A )*X = alpha*B, or X*op( A ) = alpha*B,
-
- where alpha is a scalar, X and B are m by n matrices, A is a unit, or
- non-unit, upper or lower triangular matrix and op( A ) is one of
-
- op( A ) = A or op( A ) = A' or op( A ) = conjg( A' ).
-
- The matrix X is overwritten on B.
-
-
- PPPPAAAARRRRAAAAMMMMEEEETTTTEEEERRRRSSSS
- ssssiiiiddddeeee On entry, ssssiiiiddddeeee specifies whether op( A ) appears on the left or
- right of X as follows:
-
-
- FFFFOOOORRRRTTTTRRRRAAAANNNN
- side = 'L' or 'l' op( A )*X = alpha*B.
- side = 'R' or 'r' X*op( A ) = alpha*B.
-
- CCCC
- side = LeftSide op( A )*X = alpha*B.
- side = RightSide X*op( A ) = alpha*B.
-
- Unchanged on exit.
-
- uuuupppplllloooo On entry, uuuupppplllloooo specifies whether the matrix A is an upper or
- lower triangular matrix as follows:
-
-
- FFFFOOOORRRRTTTTRRRRAAAANNNN
- uplo = 'U' or 'u' A is an upper triangular matrix.
-
-
-
- PPPPaaaaggggeeee 2222
-
-
-
-
-
-
- ____TTTTRRRRSSSSMMMM((((3333FFFF)))) ____TTTTRRRRSSSSMMMM((((3333FFFF))))
-
-
-
- uplo = 'L' or 'l' A is a lower triangular matrix.
-
- CCCC
- uplo = UpperTriangle A is an upper triangular matrix.
- uplo = LowerTriangle A is a lower triangular matrix.
-
- Unchanged on exit.
-
- ttttrrrraaaannnnssssaaaa On entry, ttttrrrraaaannnnssssaaaa specifies the form of op( A ) to be used in the
- matrix multiplication as follows:
-
- FFFFOOOORRRRTTTTRRRRAAAANNNN
- transa = 'N' or 'n' op( A ) = A.
- transa = 'T' or 't' op( A ) = A'.
- transa = 'C' or 'c' op( A ) = conjg( A' ).
-
- CCCC
- transa = NoTranspose op( A ) = A.
- transa = Transpose op( A ) = A'.
- transa = ConjugateTranspose op( A ) = conjg( A' ).
-
- Unchanged on exit.
-
- ddddiiiiaaaagggg On entry, ddddiiiiaaaagggg specifies whether or not A is unit triangular as
- follows:
-
- FFFFOOOORRRRTTTTRRRRAAAANNNN
- diag = 'U' or 'u' A is assumed to be unit
- triangular.
- diag = 'N' or 'n' A is not assumed to be unit
- triangular.
-
- CCCC
- diag = UnitTriangular A is assumed to be unit
- triangular.
- diag = NotUnitTriangular A is not assumed to be unit
- triangular.
-
- Unchanged on exit.
-
- mmmm On entry, mmmm specifies the number of rows of B. mmmm must be at least
- zero.
- Unchanged on exit.
-
- nnnn On entry, nnnn specifies the number of columns of B. nnnn must be at
- least zero.
- Unchanged on exit.
-
- aaaallllpppphhhhaaaa On entry, aaaallllpppphhhhaaaa specifies the scalar alpha. When aaaallllpppphhhhaaaa is zero
- then aaaa is not referenced and bbbb need not be set before entry.
- Unchanged on exit.
-
-
-
-
- PPPPaaaaggggeeee 3333
-
-
-
-
-
-
- ____TTTTRRRRSSSSMMMM((((3333FFFF)))) ____TTTTRRRRSSSSMMMM((((3333FFFF))))
-
-
-
- aaaa An array containing the matrix A.
-
- FFFFOOOORRRRTTTTRRRRAAAANNNN
- Array of dimension (lda, k).
-
- CCCC
- A pointer to an array of size lda*k.
- See note below about array storage convention for C.
-
- kkkk is mmmm when side = 'L' or 'l' or LeftSide and is nnnn when side =
- 'R' or 'r' or RightSide.
-
- Before entry with uuuupppplllloooo ==== ''''UUUU'''' oooorrrr ''''uuuu'''' oooorrrr , the elements
- corresponding to the leading k by k upper triangular elements of
- the matrix A must contain the upper triangular matrix and the
- corresponding strictly lower triangular part of the matrix A is
- not referenced.
-
- Before entry with uuuupppplllloooo ==== ''''LLLL'''' oooorrrr ''''llll'''' oooorrrr , the elements
- corresponding to the leading k by k lower triangular elements of
- the matrix A must contain the lower triangular matrix and the
- corresponding strictly upper triangular part of the matrix A is
- not referenced.
-
- Note that when ddddiiiiaaaagggg ==== ''''UUUU'''' oooorrrr ''''uuuu'''' oooorrrr , the elements corresponding
- to the diagonal elements of the matrix A are not referenced
- either, but are assumed to be unity.
-
- Unchanged on exit.
-
- llllddddaaaa On entry, llllddddaaaa specifies the first dimension of A as declared in
- the calling (sub) program. When side = 'L' or 'l' then lda must
- be at least max( 1, m ), when side = 'R' or 'r' then lda must be
- at least max( 1, n ).
- Unchanged on exit.
-
- bbbb An array containing the matrix B.
-
- FFFFOOOORRRRTTTTRRRRAAAANNNN
- An array of dimension ( ldb, n ).
-
- CCCC
- A pointer to an array of size ldb*n.
- See note below about array storage convention for C.
-
- Before entry it should contain the elements corresponding to the
- m by n matrix B. On exit it overwritten by the transformed
- matrix.
-
-
-
-
-
-
-
- PPPPaaaaggggeeee 4444
-
-
-
-
-
-
- ____TTTTRRRRSSSSMMMM((((3333FFFF)))) ____TTTTRRRRSSSSMMMM((((3333FFFF))))
-
-
-
- llllddddbbbb On entry, llllddddbbbb specifies the first dimension of B as declared in
- the calling (sub)program. ldb must be at least max( 1, m ).
- Unchanged on exit.
-
-
- CCCC AAAARRRRRRRRAAAAYYYY SSSSTTTTOOOORRRRAAAAGGGGEEEE CCCCOOOONNNNVVVVEEEENNNNTTTTIIIIOOOONNNN
- The matrices are assumed to be stored in a oooonnnneeee ddddiiiimmmmeeeennnnssssiiiioooonnnnaaaallll CCCC aaaarrrrrrrraaaayyyy
- in an analogous fashion as a Fortran array (column major). Therefore,
- the element A(i+1,j) of matrix A is stored immediately after the
- element A(i,j), while A(i,j+1) is lda elements apart from A(i,j).
- The element A(i,j) of the matrix can be accessed directly by reference
- to a[ (j-1)*lda + (i-1) ].
-
-
- AAAAUUUUTTTTHHHHOOOORRRRSSSS
- Jack Dongarra, Argonne National Laboratory.
- Iain Duff, AERE Harwell.
- Jeremy Du Croz, Numerical Algorithms Group Ltd.
- Sven Hammarling, Numerical Algorithms Group Ltd.
-
-
- TTTTUUUUNNNNIIIINNNNGGGG
- Optimized and parallelized for SGI R3000, R4x00 and R8000 platforms.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- PPPPaaaaggggeeee 5555
-
-
-
-